Pular para o conteúdo

[AJUDA] If Else dando problema [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 29/03/2012 - 22:09h

#include <stdio.h>

int main(){
float tempo, salario, bonus, novo_salario;

printf ("A empresa XKW Ltda está concedendo um bonus de 20%% do salário a todos os funcionários com tempo\n");
printf ("de trabalho na empresa igual ou superior a cinco anos e de dez por cento aos demais.\n\n");

printf ("Por favor, entre com a quantidade de tempo que você trabalha na empresa: \n");
printf ("Exemplo: 12 Anos Digite 12\n");
scanf ("%f",&tempo);

if (tempo < 5){
printf ("\nAgora, entre com o seu salário atual: ");
scanf ("%f",&salario);
bonus = 0.2 * salario;
novo_salario = bonus + salario;
printf ("Seu Bonus de salário será de R$ %.2f, seu salário esse mês será R$ %.2f\n",bonus, novo_salario);
}

if (tempo >= 5){
printf ("\nAgora, entre com seu salário atual: ");
scanf ("%f",&salario);
bonus = 0.2 * salario;
novo_salario = bonus + salario;
printf ("Seu Bonus de salário será de R$ %.2f, seu salário esse mês será R$ %.2f\n",bonus, novo_salario);
}

else {
printf ("\nVocê entrou com um valor de tempo inválido.\n");
}

return 0;
}
Pessoal, esse meu programa, quando eu coloco a opção 2, ele funciona normal, mas se eu coloco a opção acima de 5, ele vai o if de >= 5 e vai o printf de else tambem, gostaria de saber oque estou fazendo de errado e como posso consertar..

Responder tópico

2. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 29/03/2012 - 22:36h

Isso é obvio, você tem que colocar else if na segunda condição.

3. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 29/03/2012 - 22:38h

Não estou entendendo pq vc está tratando 3 respostas se somente duas são possíveis:

"if (tempo < 5)" e "if (tempo >= 5)"

Me diga: que resposta poderia ser possível a ser tratada pelo seu "else"? Ou é menor de 5 ou é maior ou igual a 5. Troque o "if (tempo >= 5)" por else e elimine o else inútil nesse caso.

4. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 29/03/2012 - 22:40h

Entendi, é por que vi uma video aula dizendo que eu podia trabalhar com vários Ifs, e só no final colocar um else...é simples, ao inves de trabalhar com um else, eu coloco outro if...

5. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 29/03/2012 - 22:41h

ok, mas no exemplo q vc colocou o else é inútil, faça como eu te disse.

6. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 29/03/2012 - 22:44h

Se resolveu, qual foi a solução?

7. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Enviado em 30/03/2012 - 03:37h

Simples, para o exemplo de tempo <= 5, seu primeiro if se torna verdadeiro, mas seu segundo if falso, sendo assim o programa com um número <=4 sempre cairá no else. Uma boa alternativa é mudar os segundo if para um else if, ou tirar o else e colocar mais um if!

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder